package com.ybb.vue.domain.dto;

import lombok.Data;

import javax.validation.constraints.*;

/**
 * @author ybb
 * @version 1.0
 * @Description TODO
 * @Date 2023/3/12 13:50
 */

@Data
public class EpmResidentSaveDto {

    private String id;

    @NotBlank(message = "居民姓名不能为空")
    /**
     * 居民姓名
     */
    private String name;

    /**
     *  年龄
     */
    @NotNull(message = "年龄不能为空")
    @Min(value = 0,message = "年龄不能小于0岁")
    @Max(value = 150,message = "年龄不能大于150岁")
    private Integer age;

    /**
     * 性别
     */
    @NotBlank(message = "性别不能为空")
    private String sex;

    /**
     * 手机号
     */
    @NotNull(message = "手机号不能为空")
    @Pattern(regexp = "^[\\d\\*]{7,12}$", message = "手机号格式有误")
    private String phoneNumber;

    /**
     * 身份证号
     */
    @NotNull(message = "身份证号不能为空")
    @Pattern(regexp = "^[1-9]\\d{5}(18|19|([23]\\d))\\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$", message = "身份证号格式有误")
    private String idCard;

    /**
     * 居民所在楼栋
     */
    @NotNull(message = "居民所在楼栋不能为空")
    private String building;

    /**
     * 单元号
     */
    @NotNull(message = "单元号不能为空")
    private String unit;

    /**
     * 门牌号
     */
    @NotNull(message = "门牌号不能为空")
    private String houseNumber;
}
